package com.castile.ssl.context.service;

import com.castile.ssl.context.CustomSSLContextService;
import org.apache.nifi.components.PropertyDescriptor;
import org.apache.nifi.components.ValidationContext;
import org.apache.nifi.components.ValidationResult;
import org.apache.nifi.controller.ControllerServiceInitializationContext;
import org.apache.nifi.processor.exception.ProcessException;
import org.apache.nifi.reporting.InitializationException;
import org.apache.nifi.security.util.TlsConfiguration;

import javax.net.ssl.SSLContext;
import javax.net.ssl.X509TrustManager;
import java.util.Collection;
import java.util.Collections;
import java.util.List;

/**
 * @author castile
 * @date 2025-06-14 上午12:08
 */
public class DioCustomSSLContextService implements CustomSSLContextService {
    @Override
    public TlsConfiguration createTlsConfiguration() {
        return null;
    }

    @Override
    public SSLContext createContext() {
        return null;
    }

    @Override
    public SSLContext createSSLContext(org.apache.nifi.security.util.ClientAuth clientAuth) throws ProcessException {
        return null;
    }

    @Override
    public SSLContext createSSLContext(ClientAuth clientAuth) throws ProcessException {
        return null;
    }

    @Override
    public X509TrustManager createTrustManager() {
        return null;
    }

    @Override
    public String getTrustStoreFile() {
        return "";
    }

    @Override
    public String getTrustStoreType() {
        return "";
    }

    @Override
    public String getTrustStorePassword() {
        return "";
    }

    @Override
    public boolean isTrustStoreConfigured() {
        return false;
    }

    @Override
    public String getKeyStoreFile() {
        return "";
    }

    @Override
    public String getKeyStoreType() {
        return "";
    }

    @Override
    public String getKeyStorePassword() {
        return "";
    }

    @Override
    public String getKeyPassword() {
        return "";
    }

    @Override
    public boolean isKeyStoreConfigured() {
        return false;
    }

    @Override
    public String getSslAlgorithm() {
        return "";
    }

    @Override
    public void initialize(ControllerServiceInitializationContext controllerServiceInitializationContext) throws InitializationException {

    }

    @Override
    public Collection<ValidationResult> validate(ValidationContext validationContext) {
        return Collections.emptyList();
    }

    @Override
    public PropertyDescriptor getPropertyDescriptor(String s) {
        return null;
    }

    @Override
    public void onPropertyModified(PropertyDescriptor propertyDescriptor, String s, String s1) {

    }

    @Override
    public List<PropertyDescriptor> getPropertyDescriptors() {
        return Collections.emptyList();
    }

    @Override
    public String getIdentifier() {
        return "";
    }
}
